home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Extra 1997 #2 / Amiga Plus Extra 1997 #2.iso / pd / misc / macro / api / asm / golded_api.i next >
Encoding:
Text File  |  1997-02-16  |  6.3 KB  |  285 lines

  1.   IFND GOLDED_API_I
  2. GOLDED_API_I  SET 1
  3.  
  4. **
  5. **  $VER: golded_api.i 00.02 (26.01.95)
  6. **
  7. **  © 1994-95 Michael Brakemeier
  8. **
  9. **  PROGRAMNAME:
  10. **    golded_api.i
  11. **
  12. **  FUNCTION:
  13. **    asm-include file for GoldEd-API.
  14. **    (see original GoldED.h for further Information)
  15. **
  16. **  $HISTORY:
  17. **
  18. **   26.01.95 : 00.02 : Redesigned for Release 3 of GoldEd.h
  19. **                      which comes with GoldED V2.0
  20. **   19.11.94 : 00.01 : initial release
  21. **                      based on GoldEd.h Release 2.0, Revision 37.6
  22. **                      © by Dietmar Eilert 1994-95
  23. **
  24. **
  25. **  please send bug-reports/flames/etc. concerning this translation
  26. **  to BERTI@HSP.zer.de, not to Dietmar Eilert !
  27.  
  28.   IFND    EXEC_TYPES_I
  29.   INCLUDE "exec/types.i"
  30.   ENDC
  31.  
  32.   IFND    EXEC_LISTS_I
  33.   INCLUDE "exec/lists.i"
  34.   ENDC
  35.  
  36.   IFND    INTUITION_INTUITION_I
  37.   INCLUDE "intuition/intuition.i"
  38.   ENDC
  39.  
  40.   IFND    UTILITY_TAGITEM_I
  41.   INCLUDE "utility/tagitem.i"
  42.   ENDC
  43.  
  44.   IFND    WORKBENCH_WORKBENCH_I
  45.   INCLUDE "workbench/workbench.i"
  46.   ENDC
  47.  
  48. * global peferences of GoldED (most entries are READ-ONLY!)
  49.  
  50.   STRUCTURE GlobalConfig,0
  51.     UWORD   F_ScreenType
  52.     APTR    F_ScrnName
  53.     UWORD   F_OverscanType
  54.     UWORD   F_Depth
  55.     STRUCT  F_Colors,3072
  56.     ; colors are organized as a 3D-array UWORD [256][3][2] !!!!
  57.     BOOL    F_AutoScroll
  58.     UWORD   F_AutoScrollX
  59.     UWORD   F_AutoScrollY
  60.     ULONG   F_ModeID
  61.     BOOL    F_BorderBlank
  62.     BOOL    F_Shanghai
  63.     BOOL    F_ShowIcons
  64.     UWORD   F_SliderMode
  65.     BOOL    F_AdjustOverscan
  66.     BOOL    F_ChunkyPixel
  67.     BOOL    F_Barlabel
  68.     BOOL    F_Clock
  69.     APTR    F_TxtFontAttr
  70.     APTR    F_PrvFontAttr
  71.     APTR    F_WinFontAttr
  72.     APTR    F_GadFontAttr
  73.     APTR    F_ScrFontAttr
  74.     APTR    F_BldFontAttr
  75.     BOOL    F_NewLook
  76.     UWORD   F_EditWinW
  77.     UWORD   F_EditWinH
  78.     UWORD   F_WinX
  79.     UWORD   F_WinY
  80.     BOOL    F_BottomSlider
  81.     UWORD   F_SliderRight
  82.     UWORD   F_SliderBottom
  83.     UWORD   F_ArrangeLeft
  84.     UWORD   F_ArrangeRight
  85.     UWORD   F_ArrangeTop
  86.     UWORD   F_ArrangeBottom
  87.     UWORD   F_ArrangeWeight
  88.     BOOL    F_AutoArrange
  89.     BOOL    F_CenterWin
  90.     UWORD   F_ScrollBorderX
  91.     UWORD   F_ScrollBorderY
  92.     BOOL    F_SimpleMessages
  93.     BOOL    F_FastScroll
  94.     BOOL    F_FullScreen
  95.     UWORD   F_ASLLeft
  96.     UWORD   F_ASLTop
  97.     UWORD   F_ASLWidth
  98.     UWORD   F_ASLHeight
  99.     BOOL    F_UseASL
  100.     WORD    F_TaskPri
  101.     UWORD   F_ErrorBeep
  102.     BOOL    F_HotKey
  103.     STRUCT  F_User,40
  104.     APTR    F_ARexx
  105.     LABEL   GLOBALCONFIG_SIZE
  106.  
  107.  
  108. * preferences of current text (READ-ONLY!)
  109.  
  110.   STRUCTURE EditConfig,0
  111.     STRUCT  Node,LN_SIZE
  112.     ULONG   Magic
  113.     APTR    TextNodes
  114.     ULONG   Lines
  115.     ULONG   TopLine
  116.     UWORD   TopColumn
  117.     UWORD   Column
  118.     ULONG   Line
  119.     UWORD   LastChangeColumn
  120.     ULONG   LastChangeLine
  121.     ULONG   MaxLines
  122.     STRUCT  Path,141
  123.     STRUCT  Name,141
  124.     APTR    CurrentBuffer
  125.     UWORD   CurrentLen
  126.     APTR    UndoBuffer
  127.     UWORD   UndoLen
  128.     ULONG   UndoLine
  129.     BOOL    LineModified
  130.     BOOL    DocModified
  131.     UWORD   BlockStartX
  132.     ULONG   BlockStartY
  133.     UWORD   BlockEndX
  134.     ULONG   BlockEndY
  135.     UWORD   Marker
  136.     ULONG   SearchLine
  137.     UWORD   SearchColumn
  138.     LONG    Protection
  139.     BOOL    Folds
  140.     BOOL    LineNotFixed
  141.     BOOL    ReadOnly
  142.     STRUCT  Comment,80
  143.     UWORD   BackupCounter
  144.     BOOL    ValidName
  145.     LABEL   EDITCONFIG_SIZE
  146.  
  147. BLOCKMODE_NONE  EQU 0
  148. BLOCKMODE_LINE  EQU 1
  149. BLOCKMODE_CHAR  EQU 2
  150.  
  151. * each line of a text has an associated line node, describing the line contents
  152.  
  153.   STRUCTURE LineNode,0
  154.     UWORD   Len
  155.     APTR    Text
  156.     APTR    Fold
  157.     LABEL   LINENODE_SIZE
  158.  
  159. * each subblock of folded lines has a fold root
  160.  
  161.   STRUCTURE Fold,0
  162.     ULONG   Lines
  163.     APTR    TextNodes
  164.     LABEL   FOLD_SIZE
  165.  
  166. * Basic preferences of current window
  167.  
  168.   STRUCTURE WindowSupportInfo,0
  169.     STRUCT  Node,LN_SIZE
  170.     APTR    Window
  171.     APTR    EditConfig
  172.     UWORD   Sleep
  173.     APTR    Menu
  174.     APTR    GadgetList
  175.     APTR    CleanUp           ; void   *(*CleanUp)(void)
  176.     APTR    Server            ; void   *(*Server)(void)
  177.     APTR    CallBack          ; void   *(*CallBack)(APTR)
  178.     APTR    Data
  179.     ULONG   DataSize
  180.     ULONG   Mode
  181.     LONG    Buffer
  182.     UWORD   Type
  183.     UWORD   ExitGadget
  184.     UWORD   Left
  185.     UWORD   Top
  186.     UWORD   Width
  187.     UWORD   Height
  188.     LABEL   WINDOWSINFO_SIZE
  189.  
  190. * API modification request structure
  191.  
  192.   STRUCTURE APIModifyRequest,0
  193.     APTR    mr_Next
  194.     ULONG   mr_Line
  195.     UWORD   mr_Column
  196.     APTR    mr_Data
  197.     UWORD   mr_Size
  198.     LABEL   APIMODIFYREQUEST_SIZE
  199.  
  200. * API message structure sent by GoldEd
  201.  
  202.   STRUCTURE APIMessage,0
  203.     STRUCT  api_Message,MN_SIZE
  204.     ULONG   api_State
  205.     APTR    api_Next
  206.     APTR    api_Global
  207.     APTR    api_Config
  208.     APTR    api_WinInfo
  209.     ULONG   api_Class
  210.     ULONG   api_Action
  211.     ULONG   api_Qualifier
  212.     APTR    api_Data
  213.     ULONG   api_Error
  214.     ULONG   api_Refresh
  215.     APTR    api_Modify
  216.     LABEL   APIMESSAGE_SIZE
  217.  
  218.  
  219. * ARexx notify structure passed to clients (see API_ACTION_COMMAND below)
  220.  
  221.   STRUCTURE APIRexxNotify,0
  222.     APTR    arn_Command
  223.     LONG    arn_RC
  224.     APTR    arn_CommandResult
  225.     APTR    arn_CommandError
  226.     LABEL   APIREXXNOTIFY_SIZE
  227.  
  228.  
  229. * Notify classes. Clients will recieve only those classes they've asked for
  230.  
  231. API_CLASS_ROOT        EQU $0001
  232. API_CLASS_SCREEN      EQU $0002
  233. API_CLASS_KEY         EQU $0004
  234. API_CLASS_REXX        EQU $0008
  235.  
  236. * supported refresh types (api_Refresh)
  237.  
  238. API_REFRESH_LINE      EQU $0002
  239. API_REFRESH_DISPLAY   EQU $0004
  240. API_REFRESH_SYNC      EQU $0008
  241. API_REFRESH_NOMARKER  EQU $0010
  242.  
  243. * Supported api_Action values for API_CLASS_ROOT
  244.  
  245. API_ACTION_NOP        EQU 0
  246. API_ACTION_DIE        EQU 1
  247. API_ACTION_CONFIG     EQU 2
  248. API_ACTION_INTRODUCE  EQU 3
  249.  
  250. * API_ACTION_INTRODUCE tags
  251.  
  252. API_Client_Name       EQU (TAG_USER+1)
  253. API_Client_Copyright  EQU (TAG_USER+2)
  254. API_Client_Purpose    EQU (TAG_USER+3)
  255. API_Client_Template   EQU (TAG_USER+4)
  256.  
  257. * Supported api_Action values for API_CLASS_KEY
  258.  
  259. API_ACTION_VANILLAKEY EQU 1
  260.  
  261. * Supported api_Action values for API_CLASS_SCREEN
  262.  
  263. API_ACTION_HIDE       EQU 1
  264. API_ACTION_SHOW       EQU 2
  265.  
  266. * Supported api_Action values for API_CLASS_REXX
  267.  
  268. API_ACTION_COMMAND    EQU 1
  269.  
  270. * Supported api_Error values
  271.  
  272. API_ERROR_OK          EQU 0
  273. API_ERROR_FAIL        EQU 1
  274. API_ERROR_UNKNOWN     EQU 2
  275.  
  276. * Supported api_State values
  277.  
  278. API_STATE_IGNORE      EQU 0
  279. API_STATE_NOTIFY      EQU 1
  280. API_STATE_CONSUMED    EQU 2
  281.  
  282.     ENDC ; GOLDED_API_I
  283.  
  284.  
  285.